% OptLib function list
% Line search:
%   - Step length
%       - compute step length
%           backtk(cond,a0,x,p,c,f0,f1,rho)~ backtracking
%       - Conditions on the step length:
%           armijo(a,x,p,c,f0,f1);
%           goldstein(a,x,p,c,f0,f1);
%           wolfe(a,x,p,c,f1) ~ curvature condition;
%           swolfe(a,x,p,c,f1) ~ strong wolfe/curvature condition;
%           gamma(a,x,p,eta,mu,f0,f1) ~ armijo + swolfe;
%   - Search direction
%       - compute search direction
%           stdt(x,f1) ~ steepest descent direction;
%           newtonm_d(x,f1,f2) ~ newton's method, with direct solver;
%       - for Newton type method
%           - indefinite hessian
%               mcf(A,epsilon) ~ modified cholesky factorization;
%               mcf_id(A) ~ cholesky factorization with added multiple of
%                           identity;
%   - line search framework
%       gls(x0,sd,sl,conv,f0,f1,f2) ~ use any combinations of 
%           search direction & step length computing method; 
